package com.project.mapper;

import com.project.bean.UserBean;
import org.apache.ibatis.annotations.Param;

import java.util.List;

public interface IUserDao {
    /**
     * 登录,如果登录失败返回空值
     * @param account 用户账号
     * @param pwd 用户密码
     * @return 用户对象
     */
    UserBean login(@Param("account") String account, @Param("pwd") String pwd);

    /**
     * 返回所有用户集合
     * @return 用户对象集合
     */
    List<UserBean> findAllUser();

    /**
     * 添加用户，需检测用户是否存在
     * @param user 用户对象
     */
    void addUser(UserBean user);

    /**
     * 检测用户名是否存在
     * @param userName 用户名
     * @return 存在返回true，不存在返回false
     */
    UserBean checkName(String userName);

    /**
     * 删除用户
     * @param id 用户id
     */
    void delUser(int id);

    /**
     * 按id查询用户
     * @param id 用户id
     * @return 用户对象
     */
    UserBean findById(Integer id);

    /**
     * 用户等级修改
     * @param id 用户id
     * @param rank 用户新等级
     */
    void updateRank(@Param("id") int id,@Param("rank") String rank);

    /**
     * 按用户id修改用户密码
     * @param id 用户id
     * @param newPwd 新密码
     */
    void updatePwd(@Param("id") Integer id,@Param("newPwd") String newPwd);
}
